#include<iostream>
using namespace std;


#include"MyMap.h"
#include"MySet.h"

int main()
{
	lkm::set<int> s;
	s.insert(3);
	s.insert(7);
	s.insert(2);
	s.insert(10);

	lkm::set<int>::iterator it = s.begin();
	while (it != s.end())
	{
		//*it = 20;
		cout << *it << " ";
		++it;
	}
	cout << endl;

	for (const auto& e : s)
	{
		cout << e << " ";
	}
	cout << endl;
	cout << endl;


	lkm::map<int ,int> m;
	m.insert(make_pair(3, 3));
	m.insert(make_pair(20, 20));
	m.insert(make_pair(6, 6));
	m.insert(make_pair(12, 12));


	lkm::map<int, int>::iterator mit = m.begin();
	while (mit != m.end())
	{
		//cout << *mit << " ";
		//mit->first = 10;
		mit->second = 10;
		cout << mit->first << ":" << mit->second << endl;
		++mit;
	}
	cout << endl;

	for (const auto& kv : m)
	{
		cout << kv.first << ":" << kv.second << endl;
	}
	cout << endl;
	
	return 0;
}